home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / public / fax / src / doc / class2.txt < prev    next >
Text File  |  1994-08-01  |  56KB  |  1,337 lines

  1.  
  2.                    SUPRA TECHNICAL SUPPORT BULLETIN 
  3.                CLASS 2 FAX COMMANDS FOR SUPRA FAXMODEMS 
  4.                               6/19/92
  5.  
  6. Supra Corporation
  7. 7101 Supra Drive SW, Albany, OR  97321
  8. General (503) 967-2400 / Sales (503) 967-2410 / Fax (503) 967-2401
  9. Supra Tech Support  (503) 967-2440  8:00am - 5:00pm PST, M-F
  10.  
  11. Supra BBS........(503) 967-2444  24 Hours
  12. CompuServe.......76004,565
  13. BIX..............SupraCorp
  14. America Online...SupraCorp2
  15. GEnie............SupraTech
  16. AppleLink........D2456
  17. UseNet EMail.....supratech%supra.uucp@cs.orst.edu
  18.             .....supra!supratech@cs.orst.edu
  19.  
  20. SUPRA's DISCLAIMER:
  21.    The following information has been taken from Rockwell's RC144AC 
  22. manual. It has not been taken from the CCITT Class 2 documentation, 
  23. which is copyrighted by the CCITT.  This information is provided for 
  24. educational purposes only.  To fully understand this information 
  25. requires a through knowledge of the T.4 fax image and the T.30 fax 
  26. session protocol standards.  Due to the nature of this information, 
  27. Supra's engineers and technical support can not and will not provide any 
  28. help or support on this information.  While a majority of this 
  29. information is correct, neither Supra nor Rockwell implies or warranties 
  30. that the SupraFaxModem will work exactly as documented here. This 
  31. information is based on an early draft of Class 2, which has undergone 
  32. further revisions and changes by the CCITT TR29.2 committee.  We 
  33. STRONGLY urge anyone attempting to develop fax software to get the 
  34. required documentation from Global Engineering or the TIA.
  35.  
  36. SHORT HISTORY OF CLASS 1 AND 2
  37.   In 1988 the CCITT TR29.2 committee accepted the Class 1 standard for 
  38. communication between fax software and fax modems.  The committee also 
  39. voted on, but did not accept for various technical reasons, the Class 2 
  40. standard.  A year later, they had slightly revised the standard but 
  41. again did not accept it.  Software and hardware manufactures decided to 
  42. unofficially adopt this standard until the TR29.2 committee could 
  43. develop an acceptable standard.  Since so many companies have used the 
  44. unoffical standard, the TR29.2 committee has designated that when the 
  45. standard is offically adopted it will be known as Class 2.0.  Over the 
  46. last year or so, the TR29.2 committee has voted on several revisions to 
  47. the Class 2 standard.  Their last vote was early May '92.  A no vote for 
  48. technical reasons was entered.  The TR29.2 committee is now reviewing 
  49. the technical issues that were raised.  At this time, Supra has not 
  50. heard of a projected date for the next ballot.
  51.  
  52. WHAT IS THE DIFFERENCE BETWEEN CLASS 1 AND 2
  53.   Class 1 fax software handles all of the T.4 fax image and T.30 session 
  54. protocol information and timming.  Thus, the ability to communicate 
  55. properly with various fax machines is more a function of the software 
  56. than the fax modem.  Class 2 fax software generates a T.4  fax page 
  57. image and sends it to the fax modem a page at a time.  The fax modem 
  58. then handles the T.30 session protocol information and timming.  This 
  59. relieves the computer's cpu from some work.  The ability to communicate 
  60. properly with various fax machines is more a function of the fax modem 
  61. than the software.  However, to further complicate matters, class 2 fax 
  62. software can issue Class 1 commands and take over some of the duties of 
  63. the Class 2 fax modem.  
  64.  
  65.   When customers have a problem communicating correctly with a fax 
  66. machine/modem, it can be very difficult to determine which is at fault,
  67.  the software or the hardware.  Supra has collected numerous Class 1 and 
  68. 2 fax software for a variety of different computers.  When we receive a 
  69. report of a problem, we use these programs to determine if it is a 
  70. software or hardware problem.  If it is a hardware problem, we notify 
  71. Rockwell, otherwise we notify the software company.
  72.  
  73. BUG REPORTS
  74.   Supra is dedicated to making the best product for the best price.  If 
  75. you feel that you have found a bug, please fax or send a letter to the 
  76. attention of:
  77.  
  78.    SUPRA V32/BIS FAX BUG
  79.  
  80. Please fully describe the 'bug' (specific steps to generate it, phone 
  81. numbers to call, make and model of fax/modem, rev of our ROM (from I3 
  82. command) ), why you believe that it is a bug, what specific section of 
  83. Class 2 applies to this bug and how you would like the bug to be fixed.  
  84. Please remember that there are issues that have not been addressed or 
  85. settled by the TR29.2 committee in the Class 2 specifications. (i.e. how 
  86. the DCD and DTR lines are handled while in fax mode.)
  87.  
  88.  
  89. WHERE TO GET OFFICIAL FAX DOCUMENTATION
  90.  
  91.   Telecommunications Industry Association
  92.   1722 Eye St. NW
  93.   Suite 440
  94.   Washington, DC  20006
  95.  
  96. You need to ask for:
  97.  
  98.     Class 1 documentation - EIA/TIA-578
  99.     Class 2 documentation - Electronic Industries Association and 
  100. Telecommunications Industry Association TIA Project Number 2388, 
  101. Asynchronous Facsimile DCE Control Standard, Service Class2, TR-29.2 
  102. Committee Letter Ballot
  103.  
  104.   Global Engineering Documents                     
  105.   2805 McGaw Ave
  106.   Irvin, CA  92713 
  107.   800-854-7179
  108.   714-261-1455
  109.   714-261-7892 (Fax)     
  110.  
  111. You need to ask for:
  112.  
  113.     EIA/TIA-578 - Class 1 documentation
  114.     EIA/TIA-592 - Class 2 documentation
  115.     CCITT v7.3  - T.1 - T.90 standards, includes T.4 & T.30
  116.  
  117. (The cost for the above docs will run close to $200.  But Global will 
  118. also update you on any changes or additions to those standards you 
  119. purchase.)
  120.  
  121. Global Engineering will not have the Class 2 documentation until approx. 
  122. a month after the TR29.2 committee accepts it.  Most of those companies 
  123. which have developed Class 2 fax software either sit on the TR29.2 
  124. committee or know someone who does.  It may be possible to receive the 
  125. documentation from the TIA if you present a credible proposal.  Supra 
  126. has no knowledge of what this proposal should consist of or who you need 
  127. to talk to.
  128.  
  129.  
  130. 7.1  COMMAND SYNTAX AND GUIDELINES
  131.  
  132. 7.1.1 DTE COMMANDS
  133.  
  134. The ISO 646 character set (T.50 International Alphabet 5, American 
  135. Standard Code for Information Interchange) is used for the issuance of 
  136. commands and responses.  Only the low-order 7 bits of each character are 
  137. used for commands or parameters; the high order bit is ignored.  Upper 
  138. case characters are equivalent to lower case characters.
  139.  
  140. For Phase C data transmission or reception, all 8 bits are needed.
  141.  
  142. DTE COMMAND LINES
  143.  
  144. A command line is a string of characters sent from a DTE to the DCE 
  145. while the DCE is in a command state.  Command lines have a prefix, a 
  146. body, and a terminator.  The prefix consists of the ASCII characters 
  147. 'AT' (065, 084) or 'at' (097, 116).  The body is a string of commands 
  148. restricted to printable ASCII characters, (032-126).  Space characters 
  149. (ASCII 032) and control characters other than CR (013) and BS (010) in 
  150. the command string are ignored.  The default terminator is the ASCII 
  151. <CR> character.  Characters that precede the AT prefix are ignored.
  152.  
  153. BSIC COMMAND SYNTAX
  154.  
  155. Characters within the command line are parsed as commands with 
  156. associated parameter values.  The basic commands consist of single ASCII 
  157. characters, or single characters preceded by a prefix character (e.g., 
  158. '&'), followed by a decimal parameter.
  159.  
  160. Missing decimal parameters are evaluated as 0.
  161.  
  162. EXTENDED COMMAND SYNTAX
  163.  
  164. The facsimile commands use extended syntax.  They are preceded by the 
  165. '+F' characters, and they are terminated by the semicolon ';' character 
  166. (059) or by the <CR> that terminated the command line.
  167.  
  168.          AT+FAA=0         ;+FCR 1 <CR>
  169.  
  170. This command instructs the DCE to answer automatically a data or fax 
  171. call and also enables reception.
  172.  
  173.          AT+FCLASS=0 <CR>      for data mode
  174.          AT+FCLASS=1 <CR>      for Service Class 1 Fax
  175.          AT+FCLASS=2 <CR>      for Service Class 2 Fax
  176.  
  177. In Class 2, the DCE makes and terminates calls, manages the 
  178. communication session and negotiates (T.30 protocol) and transports the 
  179. image date to DTE.  The T.4 protocol management of image data, etc. is 
  180. done by DTE.
  181.  
  182. The response to 
  183.          
  184.          AT+FCLASS=0<CR>       in Data Mode
  185.  
  186. or
  187.  
  188.         AT+FCLASS=2<CR>       in Service Class 2 Fax
  189.          
  190. is
  191.        OK
  192.  
  193. The service class may be set by the DTE from the choices available using 
  194. the '+FCLASS=<VALUE>' command.
  195.  
  196. GENERAL RULES
  197.  
  198. 1.  +Fnnn commands must be entered completely otherwise an 
  199.     ERROR response is sent.
  200.  
  201. 2.  All response messages are preceded and followed by <CR><LF>. 
  202.     Multiple response commands, e.g., +FDIS:+FCSI: and +FDCS, will 
  203.     therefore appear to a have a blank line between them.
  204.  
  205. 3.  Fax Class 2 commands can be separated by the ";" character.  The ";" 
  206.     can be omitted if desired.  Note that non-data commands cannot be 
  207.     separated by ";" which is allowed as a dial modifier.
  208.  
  209. 4.  All class 2 commands are assumed to be the final command on a 
  210.     command line.  Additional characters will be ignored.
  211.  
  212. 5.  An ERROR message will be generated if any of the following 
  213.     conditions:
  214.  
  215.       a.  A class 1 command is received while in Class 2.
  216.  
  217.       b.  A Class 2 command is received while in Class 1.
  218.  
  219.       c.  A Class 1 or Class 2 action command is received while in data 
  220.           modem mode
  221.  
  222.       d.  A Class 2 read-only parameter is given the "=" form of a +F 
  223.           command (e.g., AT+FAXERR=5).
  224.  
  225.       e.  A class 2 action command is given the inappropriate "=" or 
  226.           "=?" (e.g., AT+FDR=?).
  227.  
  228. 7.1.2 SERIAL PORT SPEED AND FLOW CONTROL
  229.  
  230. During fax mode, the DTE-DCE port speed is 19200 bps.
  231.  
  232. The DCE provides a speed buffer of 1024 bytes and provides DC1/DC3 
  233. (XON/XOFF) or RTS/CTS method of controlling the data into the buffer.  
  234. This flow control is controlled by AT&K3 or AT&K4 command.
  235.  
  236. This method of data flow control is available only for DTE to DCE 
  237. direction of data.  There is no provision for data flow control from DCE 
  238. to DTE.
  239.  
  240. DATA STREAM TERMINATION
  241.  
  242. The DCE exchanges streams of data with the DTE while executing data 
  243. transfer commands.  These use data stream termination described in 
  244. Section 3.2/ISO 2111.
  245.  
  246. The ASCII <DLE> character (016) is used as a special character to shield 
  247. special characters.  The <DLE><ETX> character pair (<106><003>) is used 
  248. to mark the end of a stream.  The following patterns are used:
  249.  
  250.    any data....<DLE><ETX>       end of stream
  251.    any data....<DLE><DLE>       single <DLE> in data
  252.    any data....<DLE><any byte>  delete <DLE><any byte>
  253.  
  254. DTE to DCE STREAMS
  255.  
  256. The DCE filters the data stream from the DTE, and removes all character 
  257. pairs beginning with <DLE>.  The DCE recognizes <DLE><ETX> as the stream 
  258. terminator.  The DCE recognizes <DLE><DLE> and reinserts a single <DLE> 
  259. in its place.
  260.  
  261. The DTE must filter stream data to the DCE, and insert extra <DLE> 
  262. characters ahead of data.
  263.  
  264. DCE TO DTE STREAMS
  265.  
  266. The DTE must filter the data stream from the DCE, and remove all 
  267. character pairs beginning with <DLE>.  The DTE must recognize <DLE><ETX> 
  268. as the stream terminator.  The DTE must recognize <DLE><DLE> and 
  269. reinsert a single <DLE> in its place.
  270.  
  271. The DCE filters stream data to the DTE, and inserts extra <DLE> 
  272. characters ahead of data.
  273.  
  274. 7.1.3  AUTO ANSWER
  275.  
  276. The DCE can answer as a data DCE or as a fax DCE.  It can answer the 
  277. call adaptively, i.e. it can determine whether call is 'data' or 'fax'.  
  278. The +FAA parameter controls this feature.
  279.  
  280.      AT+FAA=1           ; Auto answer as a facsimile or a
  281.                         ; data modem depending on call
  282.  
  283.      CONNECT xxx        ; DCE status response if data call
  284.  
  285.      +FCON              ; DCE status response if fax call
  286.  
  287. 7.1.4  IDENTIFICATION OF T.30 OPTIONS
  288.  
  289. Group 3 devices negotiate session parameters in DIS, DCS and DTC frames. 
  290.  These parameters are defined in table 8.2.
  291.  
  292. 7.1.5  SESSION STATUS REPORTING
  293.  
  294. The DCE provides reports to the DTE on the status of a session.  The DCE 
  295. provides following status reports:
  296.  
  297. 1.  Connection and hang up status:
  298.  
  299.         +FCON
  300.  
  301.         +FHNG:<0-255>
  302.  
  303. 2.  Requested DIS session parameters +FDIS:<string> reports remote 
  304.     facsimile capabilities.
  305.  
  306.         Syntax:+FDIS:VR, BR, WD, LN, DF, EC, BF, ST
  307.  
  308. 3.  +FDCS:<string> reports the negotiated parameters
  309.  
  310. 4.  Phase C prompts:
  311.  
  312.         XON, XOFF, DC2
  313.  
  314. 5.  Phase C base status reports: depending upon copy quality and related 
  315.     end-of page status:
  316.  
  317.         +FPTS:<1-5>
  318.  
  319. 7.1.6  PROCEDURE INTERRRUPT NEGOTIATION
  320.  
  321. CCITT allows a station to request a procedure interruption at the end of 
  322. a page.  This request is passed between stations by the PIP, PIN, and 
  323. PRI-Q messages.
  324.  
  325.  
  326. TABLE 7-1. FAX CLASS 2 COMMANDS
  327. -----------------------------------------------------------
  328. |   Command        Function                               |
  329. |---------------------------------------------------------|
  330. |   SERVICE CLASS ID                                      |
  331. |---------------------------------------------------------|
  332. |   +FCLASS=       Service Class                          |
  333. |---------------------------------------------------------|
  334. |   CLASS 2 ACTION COMMANDS                               |
  335. |---------------------------------------------------------|
  336. |   D              Originate a call                       |
  337. |   A              Answer a call                          |
  338. |   +FDT=          Data Transmission                      |
  339. |   +FET=N         Transmit Page Punctuation              |
  340. |   +FDR           Begin or Continue Phase C Receive Data |
  341. |   +FK            Session Termination                    |
  342. |---------------------------------------------------------|
  343. |  CLASS 2 DCE RESPONSES                                  |
  344. |---------------------------------------------------------|
  345. |   +FCON          Facsimile Connection Response          |
  346. |   +FDCS:         Report Current Session                 |
  347. |   +FDIS:         Report Remote Identification           |
  348. |   +FCFR          Indicate Confirmation to Receive       |
  349. |   +FTSI:         Report the Transmit Station ID         |
  350. |   +FCSI:         Report the Called Station ID           |
  351. |   +FPTS:         Page Transfer Status                   |
  352. |   +FET:          Post Page Message Response             |
  353. |   +FHNG          Call Termination with Status           |
  354. |---------------------------------------------------------|
  355. |   CLASS 2 SESSION PARAMETERS                            |
  356. |---------------------------------------------------------|
  357. |   +FMFR?         Identify Manufacturer                  | 
  358. |   +FMDL?         Identify Model                         |
  359. |   +FREV?         Identify Revision                      |
  360. |   +FDCC=         DCE Capabilities Parameters            |
  361. |   +FDIS=         Current Sessions Parameters            |
  362. |   +FDCS=         Current Session Results                |
  363. |   +FLID=         Local ID String                        |
  364. |   +FCR           Capability to Receive                  |
  365. |   +FPTS=         Page Transfer Status                   |
  366. |   +FAA           Adaptive Answer                        |
  367. |   +FBUF?         Buffer Size (Read Only)                |
  368. |   +FPHCTO        Phase C Time Out                       |
  369. |   +FAXERR        Fax Error Value                        |
  370. |   +FBOR          Phase C Data Bit Order                 |
  371. |---------------------------------------------------------|
  372.  
  373. 7.2 SERVICE CLASS 2 IDENTIFICATION AND SELECTION
  374.  
  375. The fax class 2 commands are summarized in Table 7-1.
  376.  
  377. Three commands report identification and selection information.  Each of 
  378. these three commands cause the DCE to send a message to the DTE.  Each 
  379. message is 20 bytes (ASCII encoded) followed by the terminating 
  380. character (binary 0).
  381.  
  382. 7.2.1 +FMFR?, REQUEST MANUFACTURER IDENTIFICAITION
  383.  
  384. The +FMFR? command caused the DCE to send a message identifying the DCE 
  385. product manufacturer.  The default message is:
  386.  
  387.     ROCKWELL
  388.     OK
  389.  
  390. 7.2.2  +FMDL?, IDENTIFY PRODUCT MODEL
  391.  
  392. The +FMDL? command causes the DCE to send a message identifying the DCE 
  393. product model.  The default message is:
  394.  
  395.    V.32AC
  396.    OK
  397.  
  398. 7.2.3  +FREV?, IDENTIFY PRODUCT REVISION
  399.  
  400. The +FREV? command causes the DCE to send a message identifying the DCE 
  401. product model revision number.  The typical default message is:
  402.  
  403.     V0.200 TR14-JXXX-001
  404.     OK
  405.  
  406. 7.3  SERVICE CLASS 2 ACTION COMMANDS
  407.  
  408. These commands transfer data, and punctuate sessions.  They also release 
  409. specific T.30 messages.  All action commands must be the last command on 
  410. a command line.  This is indicated by the terminating <CR>.
  411.  
  412. All action commands initiate processes.  The modem will not accept other 
  413. commands from the DTE until the modem issues a final result code  (e.g. 
  414. OK, CONNECT).  The modem will abort the process if it receives any 
  415. character before the final result code is issued.
  416.  
  417. 7.3.1  ATD, ORIGINATE A CALL
  418.  
  419. Syntax:    ATD...<CR>
  420.  
  421. The DCE can support a DTE command to originate a call using the ATD 
  422. command (See Table 4-2).
  423.  
  424. If this command is unsuccessful, the DCE reports an appropriate failure 
  425. or error type result code such as NO CARRIER, NO DIALTONE or BUSY (see 
  426. Table 4-7).
  427.  
  428. If this call is successful, the typical DCE response is:
  429.  
  430.    ATDnn.nn         (go off-hook, dial, get CED)
  431.    +FCON            (DCE detects flags)
  432.    [+FCSI:<remote ID string>]
  433.    +FDCS:<T.30 subparameter string>
  434.    OK
  435.  
  436. The DCE dials, detects call progress and generates the CNG tone.  Then 
  437. it waits for a DIS frame.  On detection of the first Phase B preamble 
  438. (V.21 ch. 2 modulated by 300 bit/s HDLC flags) it reports the "+FCON" 
  439. message to the DTE.  The DCE then switches to 19.2K bps.
  440.  
  441. The DCE generates a DCS frame based on the received DIS frame and on the 
  442. previously set +FDIS parameter.  A +FDT command from the DTE releases 
  443. the DCE to transmit that DCS frame.
  444.  
  445. The DCE reports the initial received T.30 negotiation messages, 
  446. including the DIS frame and the optional CSI ID string.  The +FDIS: 
  447. report is followed by the OK final result code.
  448.  
  449. 7.3.2  ATA, ANSWER A CALL
  450.  
  451. The DCE can support a DTE command to answer an incoming call using the 
  452. ATA command (see Table 4-2).
  453.  
  454. The DTE may issue an Answer command in response to an incoming ring.
  455.  
  456. If the Answer command is unsuccessful, the DCE will report an 
  457. appropriate failure or error type result code, such as NO CARRIER (see 
  458. 4-7)
  459.  
  460. MANUAL CALL ANSWER
  461.  
  462. If this call is successful, the typical DCE response (answer and 
  463. receive) is:
  464.  
  465.   +FCON
  466.   [+FTSI:<remote ID string>]
  467.   +FDCS: <T.30 subparameter string>
  468.   OK
  469.   (DTE should issue +FDR command here)
  470.  
  471. On receipt of an Answer command from the DTE, the DCE answer and 
  472. generates the CED tone.  The DCE then generates a DIS frame (derived 
  473. from the +FDIS parameter) and hunts for the first T.30 negotiation 
  474. frames.  On detection of the first Phase B preamble (V.21 ch 2 modulated 
  475. by 300 bit/s HDLC flags), it reports the "+FCON" message to the DTE.
  476.  
  477. The DTE should report the initial received T.30 negotiation messages, 
  478. including the DCS frame.  The +FCS: report will be followed by the OK 
  479. final result code.
  480.  
  481. AUTOMATIC ANSWER
  482.  
  483. The modem provides for automatic answering of incoming calls.  If 
  484. configured for automatic answer, the modem answers and incoming call in 
  485. compliance with T.30 and reports the same messages as described for 
  486. manual answer.
  487.  
  488. CONNECTIONS AS A DATA MODEM
  489.  
  490. If configured to do so by the +FAA parameter, the DCE will adaptively 
  491. answer as a facsimile DCE or as a data DCE.  If the DCE answers as a 
  492. facsimile DCE or as a data DCE.  If the DCE answers as a data DCE, it 
  493. resets the +FCLASS parameter to 0 and issues the appropriate final 
  494. result code (e.g. CONNECT or NO CARRIER) to the DTE.
  495.  
  496. 7.3.3  +FDT, DATA TRANSMISSION
  497.  
  498. Syntax: +FDT<CR>
  499.  
  500. The +FDT command prefixes Phase C data transmission.  When the DCE is 
  501. ready to accept Phase C data, it issues the negotiation responses and 
  502. the CONNECT result code to the DTE.
  503.  
  504. In Phase B, the +FDT command releases the DCE to proceed with 
  505. negotiation, and releases the DCS message to the remote station.  In 
  506. Phase C, the +FDT command resumes transmission after the end of a prior 
  507. transmit data stream.
  508.  
  509. INITIATE PAGE TRANSMISSION
  510.  
  511. Phase B DCE polled response:
  512.  
  513.   [+FCSI:<remote ID string>]                   ; If new CSI received
  514.   [+FDIS:<subparameters from remote station>]  ; If new DIS received
  515.   +FDCS:<T.30 subparameter string>
  516.   CONNECT
  517.   <XON>                                        ; When ready for data
  518.  
  519. After placing a call, or after finishing a document exchange, the DTE 
  520. may command the DCE to re-enter T.30 Phase B to attempt to negotiate a 
  521. document transmission.
  522.  
  523. CONTINUE A PAGE
  524.  
  525.    CONNECT
  526.    <XON>
  527.  
  528. The DTE may issue more than one +FDT command for a given page, so that 
  529. different files may be concatenated together.  These files must have the 
  530. same format.
  531.  
  532. PHASE C DATA FRAMING
  533.  
  534. Phase C data must be presented to the DCE in stream mode.  The DCE 
  535. expects Phase C data to follow until it detects <DLE><ETX> termination 
  536. characters.  The DCE will filter the stream as described in Section 
  537. 7.1.2
  538.  
  539. The DCE will acknowledge the end of the data by returning the OK result 
  540. code to the DTE.
  541.  
  542. If there is data underrun before the next +FDT or +FET= command, the DCE 
  543. will zero-fill pad as per T.4 until the  Phase C timeout (+FPHCTO) is 
  544. reached, or until more data is received.  The DCE appends an RTC pattern 
  545. to the transmit data after an +FET= command is received from the DTE.
  546.  
  547. PHASE C DATA FORMAT
  548.  
  549. The Phase C data will be of the format specified by the negotiated T.30 
  550. DCS frame.  The +FDCS <string> response is defined in section 7.4.2.  
  551. The subparameter values are described in table 7.2.
  552.  
  553. The DCE will use the negotiated minimum Scan Time parameter from the DCS 
  554. frame , and insert sufficient fill bits to pad each line to the minimum 
  555. scan time.  This is reported in the +FDCS:ST subparameter.
  556.  
  557. If the DCE finds more than one consecutive EOL in Phase C data (e.g. 
  558. RTC), it will send only one EOL.
  559.  
  560. Note 1:  Phase C data must conform to T.4 specifications
  561.  
  562. Note 2:  The DTE need not include a final RTC, since the DCE will append 
  563.          an RTC in response to an FET= command
  564.  
  565. Note 3:  Some facsimile machines may treat two EOLs as an RTC
  566.  
  567. <CAN>, ESCAPE FROM TRANSMISSION
  568.  
  569. The DCE may request the DTE to halt Phase C transmission, by sending an 
  570. cancel <CAN> character (024) to the DTE.  In this case, the DTE should 
  571. terminate Phase C transmission, issue <CAN>, and wait for the OK 
  572. response code from the DCE.
  573.  
  574. Table 7-2  T.30 Session Subparameter Codes
  575.  
  576. |-----------------------------------------------------------------|
  577. |  Label |  Function     |  Value  |  Description                 |
  578. |--------|---------------|---------|------------------------------|
  579. |  VR    |  Vertical     |   0     |  Normal, 98 lpi              |
  580. |        |  resolution   |   1     |  Fine, 196 lpi               |
  581. |--------|---------------|---------|------------------------------|
  582. |  BR    |  Bit Rate     |   0     |  2400 bit/s V.27 ter         |
  583. |        |               |   1     |  4800 bit/s V.27 ter         |
  584. |        |  (See note 1) |   2     |  7200 bit/s V.29 or v.17     |
  585. |        |               |   3     |  9600 bit/s V.29 or v.17     |
  586. |        |               | **4     |  12000 bit/s V.33 or v.17    |
  587. |        |               | **5     |  14400 bit/s V.33 or v.17    |
  588. |--------|---------------|---------|------------------------------|
  589. |  WD    | Page Width    |   0     |  1728 pixels in 215 mm       |
  590. |        |               |   1     |  2048 pixels in 255 mm       |
  591. |        |               |   2     |  2432 pixels in 303 mm       |
  592. |        |               |  *3     |  1216 pixels in 151 mm       |
  593. |        |               |  *4     |   864 pixels in 107 mm       |
  594. |--------|---------------|---------|------------------------------|
  595. |  LN    |  Page Length  |   0     |  A4, 297 mm                  |
  596. |        |               |  *1     |  B4, 364 mm                  |
  597. |        |               |  *2     |  unlimited length            |
  598. |--------|---------------|---------|------------------------------|
  599. |  DF    |  Data         |   0     |  1-D modified Huffman        |
  600. |        |  Compression  |   1     |  2-D modified Read           |
  601. |        |  Format       |  *2     |  2-D uncompressed mode       |
  602. |        |               |  *3     |  2-D modified Read           |
  603. |--------|---------------|---------|------------------------------|
  604. |  EC    |  Error        |   0     |  Disable ECM                 |
  605. |        |  Correction   |  *1     |  Enable ECM,64 bytes/frame   |
  606. |        |  (Annex       |  *2     |  Enable ECM,256 bytes/frame  |
  607. |        |   A/T.30)     |         |                              |
  608. |        |  (See Note 2) |         |                              |
  609. |--------|---------------|---------|------------------------------|
  610. |  BF    |  Binary File  |   0     |  Disable BFT                 |
  611. |        |  Transfer     |  *1     |  Enable BFT                  |
  612. |        |  (See Note 3) |         |                              |
  613. |--------|---------------|---------|------------------------------|
  614. |  ST    |  Scan Time/   |         |  VR=normal   VR=fine         |
  615. |        |  Line         |   0     |    0 ms        0 ms          |
  616. |        |               |   1     |    5 ms        5 ms          |
  617. |        |               |   2     |    10 ms       5 ms          |
  618. |        |               |   3     |    10 ms       10 ms         |
  619. |        |               |   4     |    20 ms       10 ms         |
  620. |        |               |   5     |    20 ms       20 ms         |
  621. |        |               |   6     |    40 ms       20 ms         |
  622. |        |               |   7     |    40 ms       40 ms         |
  623. |--------|---------------|---------|------------------------------|
  624. |  NOTES: 1: CCITT T.30 does not provide for the answering        |
  625. |            station to specify all speeds exactly using the DIS  |
  626. |            frame.  Implementation of some BR codes (e.g.code 2) |
  627. |            by an answering DCE is manufacturer specific.        |
  628. |                                                                 |
  629. |                                                                 |
  630. |         * =Not supported                                        |
  631. |        ** =RC144AC only                                         |
  632. |                                                                 |
  633. |         2: ECM has been implemented in Supra's version 1.200C.  |
  634. |            ECM transmit works correctly, and ECM receive works, |
  635. |            but does not tell the transmitting machine that the  |
  636. |            fax was received correctly.                          |
  637. |                                                                 |
  638. |        3:  BFT has been implemented in Supra's version 1.200C.  |
  639. |            BFT transmit works correctly, and BFT receive works, |
  640. |            but does not tell the transmitting machine that the  |
  641. |            file was received correctly.                         |
  642. |                                                                 |
  643. |-----------------------------------------------------------------|
  644.  
  645.  
  646. 7.3.4  +FET=, TRANSMIT PAGE PUNCTUATION
  647.  
  648. Syntax:   +FET=<ppm>[,<pc>,<bc>,<fc>]
  649.  
  650. DCE response:
  651.   +FPTS:<ppr>    ; when receive from remote OK
  652.  
  653. This command is used to punctuate page and document transmission after 
  654. one or more +FDT commands.  This command generates T.30 Post Page 
  655. Messages selected by the <ppm> code (Table 7-3)
  656.  
  657. The +FET=<ppm> command indicates that the current page is complete; no 
  658. more data will be appended to it.  The value indicates if there are any 
  659. additional pages are to be sent and, if so, whether there is a change in 
  660. any of the document parameters.
  661.  
  662. The DTE can command the DCE to generate PRI-Q messages with the 
  663. +FET=<ppm> command using ppm codes 4-6 (see Table 7-3)
  664.  
  665. This command must be sent within the time out specified by +FPHCTO after 
  666. sending Phase C data, or else the DCE will end the page and document 
  667. transmission.  If the Phase C timeout is reached, the DCE sends an EOP 
  668. post page message and terminates the session
  669.  
  670. The remote facsimile station should respond to the post page message 
  671. with a post page response.  The DCE will report this using the 
  672. +FPTS:<ppr> response (Table 7-4)
  673.  
  674. END A PAGE
  675.  
  676. The +FET= command causes the DCE to append an ETC (6 EOL) pattern as 
  677. needed and enter Phase D by sending the selected T.30 Post Page message.
  678.  
  679. The +FET=1 (EOM) command signals the remote station that the next 
  680. document will have a new DCS negotiated; this causes the session to re-
  681. enter Phase B.
  682.  
  683. 7.3.5  +FDR, BEGIN OR CONTINUE PHASE C RECEIVE DATA
  684.  
  685. Syntax:   +FDR<CR>
  686.  
  687. Default value:  3 seconds in some places
  688.  
  689. The +FDR command initiates transition to Phase C data reception.  This 
  690. can occur after answering, dialing, a document is received, or a page is 
  691. received.
  692.  
  693. The DCE reports the negotiated T.30 parameters, with the remote ID 
  694. information if available.  When the DCE is ready to commence data 
  695. transfer, it issues a CONNECT response code.  If the DCE cannot resume 
  696. data transfer because there is no more data, it responds OK.  When the 
  697. DTE is ready to accept data, it issues an <DC2> character (018) to the 
  698. DCE.
  699.  
  700. If the DTE issues an <XOFF> character to the DCE for flow control, the 
  701. DCE signals the DTE when its buffers are empty by sending a <DLE><DC2> 
  702. (<016><018>) character pair.
  703.  
  704. When the DCE delivers that last byte of a page, the DCE reports the Page 
  705. Transfer Status via the +FPTS:<ppr> response (Table 7-4).
  706.  
  707. After a Page Transfer Status Report, the DCE reports the post page 
  708. message from the remote facsimile station via the +FET:<ppm> response 
  709. (Table 7-3) which signals the intentions of the remote station.
  710.  
  711.  
  712. Table 7-3.  T.30 Post Page Message Codes
  713.  
  714. |-----------------------------------------------------------------|
  715. |  ppm    |                 |                                     |
  716. |  Code   |  Mnemonic       |  Description                        |
  717. |---------|-----------------|-------------------------------------|
  718. |    1    |  [PPS]-MPS      |  Another page next, same document   |
  719. |    2    |  [PPS]-EOM      |  Another page next                  |
  720. |    3    |  [PPS]-EOP      |  no more pages or documents         |
  721. |    4    |  [PPS-]PRI-MPS  |  Another page, procedure interrupt  |
  722. |    5    |  [PPS-]PRI-EOM  |  Another doc, procedure interrupt   |
  723. |    6    |  [PPS-]PRI-EOP  |  All done, procedure interrupt      |
  724. |    7    |  CTC            |  Continue to correct                |
  725. |   8-15  |  EOR-           |  End of Retransmission (8)+         |
  726. |  =8+ppm |                 |  Post Page Message (ppm code)       |
  727. |-----------------------------------------------------------------|
  728.  
  729. Table 7-4.  T.30 Post Page Response Message Codes
  730.  
  731. |-----------------------------------------------------------------|
  732. |  ppr    |                 |                                     |
  733. |  Code   |  Mnemonic       |  Description                        |
  734. |---------|-----------------|-------------------------------------|
  735. |   0     |  PPR            |  Partial page errors                |
  736. |   1     |  MCF            |  Page Good                          |
  737. |   2     |  RTN            |  Page bad, retrain requested        |
  738. |   3     |  RTP            |  Page good, retrain requested       |
  739. |   4     |  PIN            |  Page bad, interrupt requested      |
  740. |   5     |  PIP            |  Page good, interrupt requested     |
  741. |-----------------------------------------------------------------|
  742.  
  743. The DCE holds the post page response message to the remote facsimile 
  744. station (MCF, etc.), represented in the +FPTS parameter until the next 
  745. +FDR command.  The DTE may modify the +FPTS parameter before issuing the 
  746. +FDR command which releases that message.  The DTE must issue a +FDR 
  747. command to release Post Page Messages.
  748.  
  749. INITIATE DOCUMENT RECEPTION
  750.  
  751. The +FDR command may be issued in Phase B after an answer command, or in 
  752. Phase B after a pervious document.
  753.  
  754. The DCE response in stream mode is:
  755.  
  756.    +FCR             ; when CFR sent
  757.    [+FTSI:<remote ID string>]  ; if new TSI received
  758.    +FDCS:<T.30 subparameter string>]  ; if new DCS
  759.    CONNECT
  760.    (<DC2> needed from DTE here)
  761.    <Phase C data stream>
  762.    <DLE><ETX>
  763.    +FPTS:<ppr>,<lc>[,<blc>,<cblc>]
  764.    +FET:<ppm>
  765.    OK
  766.    (DTE must issue +FDR command to release post page response)
  767.  
  768. CONTINUE DOCUMENT RECEPTION
  769.  
  770. The DTE may issue a +FDR command in Phase D, which releases the post 
  771. page message, and indicates readiness to receive another page after 
  772. receipt of a Multipage (+FET:0) or PPS-NULL (+FET:3) message.  The DCE 
  773. response will be:
  774.  
  775.    CONNECT
  776.    (<DC2> needed from DTE here)
  777.    <Phase C data stream>
  778.    <DLE><ETX>
  779.    +FPTS:<ppr>,<lc>[,<blc>,<cblc>]
  780.    +FET:<ppm>
  781.    OK
  782.    (DTE must issue +FDR command to release post page response.
  783. If done receiving:
  784.    +FHNG:<hangup cause code>
  785.    OK
  786.  
  787.    Continue page reception
  788.  
  789. PHASE C DATA FRAMING
  790.  
  791. Phase C data may be presented to the DTE in stream mode.  The DCE will 
  792. transfer a stream of data to the DTE, followed by the <DLE><ETX> stream 
  793. termination characters.  The DCE will filter the stream as described in 
  794. 7.1.2.
  795.  
  796. PHASE C DATA FORMAT
  797.  
  798. The received data format is negotiated under T.30 reported by the 
  799. +FDCS:VR,BR,WD,LN,DF,EC,BF,ST response.
  800.  
  801. The DCE will delete the terminating RTC (6 EOLs) patterns.  The DCE may 
  802. strip zero fill bits from the data, to minimize storage needs.
  803.  
  804. <CAN>, ESCAPE FROM RECEPTION
  805.  
  806. >From the +FDR command until the end of Phase D Date, the DCE is in a 
  807. data transfer state, and will not respond to DTE command characters.  
  808. The DCE will respond to three ASCII control characters, <DC1 (017) and 
  809. <DC3> (019) flow control characters, and cancel <CAN> (024).
  810.  
  811. Upon receipt of the <CAN> character, the DCE will terminate the 
  812. reporting of received data by sending trailing <DLE><ETX> characters to 
  813. the DTE, and will then execute an implied +FK command in order to 
  814. conduct an orderly disconnection.
  815.  
  816. 7.3.6  +FK, SESSION TERMINATION
  817.  
  818. Syntax:  +FK
  819.  
  820. The +FK command causes the DCE to terminate the session in an orderly 
  821. manner.  In particular, the DCE will send a DCN message at the next 
  822. opportunity and hang up.  At the end of the termination process, the DCE 
  823. will report the +FHNG response with result code (Table 7-5).
  824.  
  825. This operation can be invoked by using the cancel <CAN> character during 
  826. Phase C data reception (see prior section).
  827.  
  828. The DCE will wait until the current page completes, unless the reception 
  829. is of unlimited length; in that case, the DCE may halt reception and 
  830. terminate the session at any time.
  831.  
  832. 7.4  SERVICE CLASS 2 DCE RESPONSES
  833.  
  834. The DCE sends information responses to the DTE as a facsimile session 
  835. proceeds.  They indicate the state of the facsimile session and convey 
  836. need information.  These messages are solicited messages generated in 
  837. execution of DTE action commands described in section 7.3.
  838.  
  839. The DCE precedes and follows the following information responses with 
  840. <CR><LF>.
  841.  
  842. The DCE provides the on-line status of several session parameters when 
  843. they are available during T.30 handshaking.  These include the remote ID 
  844. string and the DIS/DCS parameters.  These responses report the T.30 
  845. session parameter frames.  The subparameters are described in Table 7-2.
  846.  
  847. 7.4.1  +FCON, FACSIMILE CONNECTION RESPONSE
  848.  
  849. +FCON indicates connection with a fax machine.  It is released by 
  850. detection of HDLC flags in the first received frame +FCON is generated 
  851. in response to an Originate or Answer command.
  852.  
  853. 7.4.2  +FDCS:, REPORT CURRENT SESSION CAPABILITIES
  854.  
  855. Syntax:   +FDCS:VR,BR,WD,LN,DF,EC,BF,ST
  856.  
  857. +FDCS:<string> reports the negotiated parameters.  Phase C data will be 
  858. formatted as described by the subparameters.  This message may be 
  859. generated in execution of +FDT or +FDR commands before the CONNECT 
  860. result code if new DCS frames are generated of received.  (See Table 7-
  861. 2.)
  862.  
  863. 7.4.3  +FDIS:, REPORT REMOTE STATION CAPABILITIES
  864.  
  865. Syntax:   +FDIS:VR,BR,WD,LN,DF,EC,BF,ST
  866.  
  867. +FDIS:<string> reports remote facsimile station capabilities and 
  868. intentions.  The parameters are provided in ASCII notation.  (See Table 
  869. 7-2.)
  870.  
  871. This message is generated in execution of Originate, Answer, +FDT, or 
  872. +FDR commands.
  873.  
  874. 7.4.4  +FCFR, INDICATE CONFIRMATION TO RECEIVE
  875.  
  876. Syntax:  +FCFR
  877.  
  878. The DCE sends a +FCFR response to the DTE upon reception of an 
  879. acceptable TCF training burst and a valid DCS signal from the remote 
  880. machine.  This indicates that the DCE will receive Phase C data after 
  881. the remote station receives the local DCE's CFR message.  The +FCFR 
  882. message is generated in execution of a +FDR command.
  883.  
  884. 7.4.5  +FTSI:, REPORT THE TRANSMIT STATION ID
  885.  
  886. Syntax:  +FTSI:"<TSI ID string>" Transmit Station ID
  887.  
  888. This response reports the received transmit station ID string, if any. 
  889.  This message is generated in execution of Originate, Answer, +FDT, or 
  890. +FDR commands.
  891.  
  892. 7.4.6  +FCSI:, REPORT THE CALLED STATION ID
  893.  
  894. Syntax:   +FCSI:"<CSI ID string>" Called Station ID
  895.  
  896. This response reports the received called station ID string, if any.  
  897. This message is generated in execution of Originate, Answer, +FDT, or 
  898. +FDA commands.
  899.  
  900. 7.4.7  +FPTS:, RECEIVE PAGE TRANSFER STATUS
  901.  
  902. Syntax:  +FPTS:<ppr>,<lc>[,<blc>,<cblc>]
  903.  
  904. The +FPTS:<ppr> is generated by the DCE at the end of Phase C data 
  905. reception in execution of a +FDR command.
  906.  
  907. The <ppr> is generated by the DCE; it depends on the DCE capabilities at 
  908. T.4 error checking.  See Table 7-4 for <ppr> values.
  909.  
  910. The receiving DCE will count the lines and may optionally generate bad 
  911. line counts.  These values are:
  912.  
  913.     <lc> = line count
  914.     <blc> = bad line count
  915.     <cblc> = <consecutive bad line count
  916.  
  917. A receiving DTE may inspect <ppr> and write a modified value into the +FPTS parameter.  The DCE will hold the corresponding Post Page Response message until released by a +FDR command from the DTE.
  918.  
  919. 7.4.8  +FET:, POST PAGE MESSAGE RESPONSE
  920.  
  921. Syntax:   +FET:<ppm>
  922.  
  923. The +FET:<post page message> response is generated by a receiving DCE 
  924. after DCE after the end of Phase C reception on receipt of the post-page 
  925. message from the transmitting station.  The +GET:<ppm> response is 
  926. generated in execution of a +FDR command.  The <ppm> codes respond to 
  927. the T.30 pst page messages (Table 7-3)
  928.  
  929. 7.4.9  +FPTS:, TRANSMIT PAGE TRANSFER STATUS
  930.  
  931. Syntax:  +FPTS:<ppr>
  932.  
  933. The +FPTS: response reports a <ppr> number representing the copy quality 
  934. and related post page message responses received from the remote DCE.  
  935. The set of valid <ppr> values are defined in Table 7-4.
  936.  
  937. The +FPTS:<ppr> response is generated in execution of a +FET=<ppm> 
  938. command.
  939.  
  940. 7.4.10  +FHNG:, CALL TERMINATION WITH STATUS
  941.  
  942. Syntax:  +FHNG:<hangup status code>
  943.  
  944. +FHNG indicates that the call has been terminated.  The hangup cause is 
  945. reported and stored in the +FAXERR parameter for later inspection.  The 
  946. <hangup status code> values are described in Table 7-5.
  947.  
  948. +FHNG:<hsc> is a possible intermediate result code to any DTE action 
  949. command described in Section 7.3.  It is always followed by the OK final 
  950. result code.
  951.  
  952. Upon termination of a call, the DCE determines the cause of termination 
  953. and reports it as part of the FHNG:<hsc> response.  It also stores this 
  954. <hsc> code in the +FAXERR parameter for later inspection.
  955.  
  956. The hangup values are organized according to the phases of the facsimile 
  957. transaction as defined by T.30.  A COMREC error or RSPREC error 
  958. indicates that one of two events occurred.  1) a DCN (disconnect) signal 
  959. was received, or 2) an FCS error was detected and the incoming signal 
  960. was still present after 3 seconds.
  961.  
  962. The table values are in decimal notation.  Leading zero characters are 
  963. optional.
  964.  
  965.  
  966. Table 7-5  Hangup Status Codes
  967.  
  968. |------------------------------------------------------------|
  969. |    Code  |  Cause Description                              |
  970. |----------|-------------------------------------------------|
  971. |     0-9  |  CALL PLACEMENT AND TERMINATION                 |
  972. |----------|-------------------------------------------------|
  973. |       0  |  Normal and proper end of connection            |
  974. |       1  |  Ring Detect without successful handshake       |
  975. |       2  |  Call aborted, from +FK or AN                   |  
  976. |       3  |  No Loop Current                                |
  977. |----------|-------------------------------------------------|
  978. |   10-19  |  TRANSMIT PHASE A & MISCELLANEOUS ERRORS        |
  979. |----------|-------------------------------------------------|
  980. |      10  |  Unspecified Phase A error                      |
  981. |      11  |  No Answer (T.30 T1 timeout)                    |
  982. |----------|-------------------------------------------------|
  983. |   20-39  |  TRANSMIT PHASE B HANGUP CODES                  |
  984. |----------|-------------------------------------------------|
  985. |      20  |  Unspecified Transmit Phase B error             |
  986. |      21  |  Remote cannot receive or send                  |
  987. |      22  |  COMREC error in transmit Phase B               |
  988. |      23  |  COMREC invalid command received                |
  989. |      24  |  RSPEC error                                    |
  990. |      25  |  DCS sent three times without response          |
  991. |      26  |  DIS/DTC received 3 times; DCS not recognized   |
  992. |      27  |  Failure to train at 2400 bps or +FMINSP value  |
  993. |      28  |  RSPREC invalid response received               |
  994. |----------|-------------------------------------------------|
  995. |   40-49  |  TRANSMIT PHASE C HANGUP CODES                  |
  996. |----------|-------------------------------------------------|
  997. |      40  |  Unspecified Transmit Phase C error             |
  998. |      43  |  DTE to DCE data underflow                      |
  999. |----------|-------------------------------------------------|
  1000. |   50-69  |  TRANSMIT PHASE D HANGUP CODES                  |
  1001. |----------|-------------------------------------------------|
  1002. |      50  |  Unspecified Transmit Phase D error             |
  1003. |      51  |  RSPREC error                                   |
  1004. |      52  |  No response to MPS repeated 3 times            |
  1005. |      53  |  Invalid response to MPS                        |
  1006. |      54  |  No response to EOP repeated 3 times            |
  1007. |      55  |  Invalid response to EOM                        |
  1008. |      56  |  No response to EOM repeated 3 times            |
  1009. |      57  |  Invalid response to EOM                        |
  1010. |      58  |  Unable to continue after PIN or PIP            |
  1011. |----------|-------------------------------------------------|
  1012. |   70-89  |  RECEIVE PHASE B HANGUP CODES                   |
  1013. |----------|-------------------------------------------------|
  1014. |      70  |  Unspecified Receive Phase B error              |
  1015. |      71  |  RSPREC error                                   | 
  1016. |      72  |  COMREC error                                   |
  1017. |      73  |  T.30 T2 timeout, expected page not received    |
  1018. |      74  |  T.30 T1 timeout after EOM received             |
  1019. |----------|-------------------------------------------------|
  1020. |   90-99  |  RECEIVE PHASE C HANGUP CODES                   |
  1021. |----------|-------------------------------------------------|
  1022. |      90  |  Unspecified Receive Phase C error              |
  1023. |      91  |  Missing EOL after 5 seconds                    |
  1024. |      92  |  Unused code                                    |
  1025. |      93  |  DCE to DTE buffer overflow                     |
  1026. |      94  |  Bad CRC or frame (ECM or BFT modes)            |
  1027. |----------|-------------------------------------------------|
  1028. | 100-119  |  RECEIVE PHASE D HANGUP CODES                   |
  1029. |----------|-------------------------------------------------|
  1030. |     100  |  Unspecified Receive Phase D errors             |
  1031. |     101  |  RSPREC invalid response received               |
  1032. |     102  |  COMREC invalid response received               |
  1033. |     103  |  Unable to continue after PIN or PIP            |
  1034. |----------|-------------------------------------------------|
  1035. | 120-255  |  RESERVED CODES                                 |
  1036. |------------------------------------------------------------|
  1037.  
  1038.  
  1039. 7.5  SERVICE CLASS 2 PARAMETERS
  1040.  
  1041. All Service Class 2 parameters can be read, written, and tested for 
  1042. range of legal values by the DCE.  The general syntax is described in 
  1043. Section 7.1.
  1044.  
  1045. Group 3 FAX devices negotiate session parameters in DIS, DCS, and DTC 
  1046. frames.  The following parameters are provided to condition the 
  1047. facsimile DCE for the capabilities it will offer and to report the 
  1048. session settings negotiated.
  1049.  
  1050. The three primary T.30 session parameters are +FDCC, +FDIS and +FDCS.  
  1051. They are compound parameters, using values listed in Table 7-2.  Figure 
  1052. 70-1 illustrates their relationships.
  1053.  
  1054. 7.5.1  +FDCC, DCE CAPABILITIES PARAMETERS
  1055.  
  1056. Write Syntax:   +FDCC:VR,BR,WD,LN,DF,EC,BF,ST
  1057.  
  1058. Valid values    See Table 7-2
  1059.  
  1060. Default values  0,3,0,2,0,0,0,0  (RC96AC)
  1061.                 0,5,0,2,0,0,0,0  (RC144AC)
  1062.  
  1063. +FDCC allows the DTE to sense and constrain the capabilities of the 
  1064. facsimile DCE from the choices defined in CCITT t.30 Table 2.  When 
  1065. +FDCC is modified by the DTE, the DCE copies +FDCC into +FDIS.
  1066.  
  1067. 7.5.2  +FDIS, CURRENT SESSIONS CAPABILIIES PARAMETERS
  1068.  
  1069. Write Syntax:   +FDIS:VR,BR,WD,LN,DF,EC,BF,ST
  1070.  
  1071. Valid values    See Table 7-2
  1072.  
  1073. Default values  0,3,0,2,0,0,0,0  (RC96AC)
  1074.                 0,5,0,2,0,0,0,0  (RC144AC)
  1075.  
  1076.  
  1077. The +FDIS parameter allows the DTE to sense and constrain the 
  1078. capabilities used for the current session.  The DCE uses +FDIS to 
  1079. generate DIS or DTC messages directly, and uses +FDIS and received DIS 
  1080. messages to generate DCS messages.
  1081.  
  1082. The DCE initializes the +FDIS parameter from the +FDCC parameter on 
  1083. initialization, when +FDCC is written, and at the end of a session.
  1084.  
  1085. 7.5.4  +FLID=, LOCAL ID STRING
  1086.  
  1087. Write Syntax   +FLID="<local ID string>"
  1088.  
  1089. Valid values:   20 character ASCII string
  1090.  
  1091. Default value:  Empty
  1092.  
  1093. If FLID is not a null string, it generates a TSI or CSI frame.  Table 
  1094. 3/T.30 includes digits 0-9, "+" and space.
  1095.  
  1096. If the DCE supports use of Table 3/t.30 only, the response to a +FLID=? 
  1097. command is "<20)(32, 43, 48-57)".  If the DCE supports printable ASCII 
  1098. <, the response is "(20)(32-127)<CRLF>"  The first "(20)" represents 
  1099. string length: the second (character values) field reports supported 
  1100. string values.
  1101.  
  1102. Notes:  1.  The string is saved in RAM.
  1103.         2.  Non-numeric characters are not filtered out.
  1104.  
  1105. 7.5.5  +FCR, CAPABILITY TO RECEIVE
  1106.  
  1107. Write Syntax:  +FCR=<value>
  1108.  
  1109. Valid values:  1,0
  1110.  
  1111. Default values 0
  1112.  
  1113. +FCR=0 indicates that the DCE will not receive message data.  This can 
  1114. be sued when the DTE has insufficient storage.  The DCE can send and can 
  1115. be polled for a file.
  1116.  
  1117. +FCR is sampled in CCITT T.30 Phase A and Phase D
  1118.  
  1119. 7.5.6  +FPTS=, PAGE TRANSFER STATUS
  1120.  
  1121. Write syntax:   +FPTS=<ppr>
  1122.  
  1123. Valid Values:   1,2,3,4,5
  1124.  
  1125. Default value:  0
  1126.  
  1127. 7.5.7  +FCQ, COPY QUALITY CHECKING
  1128.  
  1129. Write Syntax:  +FCQ=<value>
  1130.  
  1131. Valid Values:  0
  1132.  
  1133. Default Value: 0
  1134.  
  1135. This parameter controls Copy Quality checking by a receiving facsimile 
  1136. DCE.
  1137.  
  1138. The DCE returns +FCQ=0 which indicates the DCE does no quality checking.  
  1139. The DCE will generate Copy Quality OK (MCF) responses to complete pages, 
  1140. and set +FPTS=1.
  1141.  
  1142. 7.5.8  +FPHCTO, DTE PHASE C RESPONSE TIME-OUT
  1143.  
  1144. Write Syntax:   +FPHCTO=<value>
  1145.  
  1146. Valid Values:   0-255, 100 millisecond units
  1147.  
  1148. Default Value:  30
  1149.  
  1150. The +FPHCTO command determines how long the DCE will wait for a command 
  1151. after reaching the end of data when transmitting in Phase C.  When this 
  1152. time-out is reached, the DCE assumes there are no more pages and no 
  1153. documents to send.  It then sends the T.30 EOP response to the remote 
  1154. device.
  1155.  
  1156. 7.5.9  +FAXERR, T.30 SESSION ERROR REPORT
  1157.  
  1158. Read Syntax:   +FAXERR=<table value>, read only
  1159.  
  1160. Valid values:  0-255, see table 7-5 for meaning
  1161.  
  1162. This read-only parameter indicates the cause of the hangup.  Table 7-5 
  1163. shows the valid values for this parameter as well as the meaning of the 
  1164. each value.  +FAXERR is set by the DCE at the conclusion of a fax 
  1165. session.  The DCE resets +FAXERR to 0 at the beginning of Phase A off-
  1166. hook time.
  1167.  
  1168. 7.5.10  +FBOR, DATA BIT ORDER
  1169.  
  1170. Write Syntax:  +FBOR=<value>
  1171.  
  1172. Valid Values:  0,1
  1173.  
  1174. Default value:  0
  1175.  
  1176. This parameter controls the mapping between PSTN facsimile data and the 
  1177. DTE-DCE link.  There are two choices:
  1178.  
  1179. DIRECT:  The first bit transferred to each byte on the DTE-DCE link is 
  1180. the first bit transferred on the PSTN data carrier.
  1181.  
  1182. REVERSED:  The last bit transferred of each byte on the DTE-DCE link is 
  1183. the first bit transferred on the PSTN data carrier.
  1184.  
  1185. There are two data types to control:
  1186.  
  1187. This command controls Phase C data (T.4 encoded data) transferred during 
  1188. execution of +FDT or +FDR commands.
  1189.  
  1190. The following two codes are supported.
  1191.  
  1192.   +FBOR=0  selects direct bit order for Phase C data
  1193.   
  1194.   +FBOR=1  selects reversed bit order for Phase C data
  1195.  
  1196. Note that this parameter does not affect the bit order of control 
  1197. characters generated by the DCE.
  1198.  
  1199. 7.5.11  +FAA, ANSWER PARAMETER
  1200.  
  1201. Write syntax:  +FAA=<value>
  1202.  
  1203. Valid values:   0,1
  1204.  
  1205. Default value   0
  1206.  
  1207.    +FAA=0   constrains the DCE to answer as set by +FCLASS
  1208.  
  1209.    +FAA=1   indicates that the DCE can answer and automatically 
  1210. determine whether to answer as a Class 2 facsimile DCE or as a data 
  1211. modem.  If the DCE automatically switches, if modifies FCLASS 
  1212. appropriately.
  1213.  
  1214. Class 2 adaptive answer is implemented as follows:
  1215.  
  1216. First, a data mode handshake is attempted.  If the DCE has been 
  1217. configured for automode detection (using the A command), the DCE may try 
  1218. several protocols be terminating attempts to make a data mode 
  1219. connection.  This can take as long as 6-8 seconds.
  1220.  
  1221. If the data mode connection attempt fails, a facsimile Class 2 
  1222. connection is assumed.  When a connection is made, a result of the 
  1223. adaptive answer, the DCE issues the D or FAX result code before the 
  1224. CONNECT or +FCC message to inform the DTE of the connection type.  A 
  1225. making a class 2 connection, the DCE stays on-line rather than going 
  1226. into the command mode as with a Class 2 connection.
  1227.  
  1228. 7.5.12  +FBUF?, BUFFER SIZE
  1229.  
  1230. Read syntax:   +FBUF?
  1231.  
  1232. DCE response syntax <bs>,<xoft>,<xont>,<bc> where:
  1233.  
  1234.   <bs> = total buffer size
  1235.   <xoft> = XOFF threshold
  1236.   <xcont> = XON threshold
  1237.   <bc> = current buffer byte count
  1238.  
  1239. The +FBUF parameter allows the DTE to determine the characteristics of 
  1240. the DCE's data buffer.  Data buffers are used for flow control.  Use of 
  1241. the reported values allow the DTE to transfer data without provoking 
  1242. XOFF.
  1243.  
  1244.  
  1245. 7.6  EXAMPLE SESSIONS
  1246.  
  1247. Table 7-6 and 7-7 show the typical command and responses for sending and 
  1248. receiving two pages respectively.
  1249.  
  1250.               Table 7-6 Send two pages, 1-D data, no errors
  1251. |----------------------------------------------------------------------|
  1252. | DTE COMMAND | DCE RESPONSE | LOCAL DTE ACTION |REMOTE STATION ACTION |
  1253. |-------------|--------------|------------------|----------------------|
  1254. | AT+FCLASS=2 | OK           | Set Class 2      |                      |
  1255. |-------------|--------------|------------------|----------------------|
  1256. | AT+FLID=    |              |                  |                      |
  1257. | <local id>  | OK           | Set local ID     |                      |
  1258. |-------------|--------------|------------------|----------------------|
  1259. | AT<dial str>|              | off hook, dial   | answer               |
  1260. |             |              | send CNG         | send [CED],          |
  1261. |             | +FCON        | detect flags     | v.21 flags           |
  1262. |             | +FDIS:<csi>  | get CSI          | CSI                  |
  1263. |             | +FDIS:<codes>| get DIS          | DIS                  |
  1264. |             | OK           |                  |                      |
  1265. |-------------|--------------|------------------|----------------------|
  1266. | AT+FDT      |              | send TSI         | get TSI              |
  1267. |             |              | send DCS         | get DCS              |
  1268. |             |              | send TCF         | get TCF              |
  1269. |             | +FDCS:<codes>| get CFR          | send CFR             |
  1270. |             | CONNECT      | send carrier     | receive carrier      |
  1271. |             | <XON>        |                  |                      |
  1272. | <1st page>  |              | send page data   | receive page data    |
  1273. | <DLE><ETX>  | OK           |                  |                      |
  1274. |-------------|--------------|------------------|----------------------|
  1275. | AT+FET=0    |              | send RTC         | get RTC              |
  1276. |             |              | get MPS          | send MPS             |
  1277. |             | +FPTS:1      | get MCF          | send MCF             |
  1278. |             | OK           |                  |                      |
  1279. |-------------|--------------|------------------|----------------------|
  1280. | AT+FDT      | CONNECT      | send carrier     | receive carrier      |
  1281. |             | <XON>        |                  |                      |
  1282. | <2nd page>  |              | send page data   | receive page data    |
  1283. | <DLE><ETX>  | OK           |                  |                      |
  1284. |-------------|--------------|------------------|----------------------|
  1285. | AT+FET=2    |              | send RTC         | get RTC              |
  1286. |             |              | send EOP         | get EOP              |
  1287. |             | +FPTS:1      | get MCF          | send MCF             |
  1288. |             | +FHNG:0      | send DCN         | get DCN              |
  1289. |             | OK           | hangup           | hangup               |
  1290. |-------------|--------------|------------------|----------------------|
  1291.  
  1292.  
  1293.               Table 7-7 Receive two pages, 1-D data, no errors
  1294. |----------------------------------------------------------------------|
  1295. | DTE COMMAND | DCE RESPONSE | LOCAL DTE ACTION |REMOTE STATION ACTION |
  1296. |-------------|--------------|------------------|----------------------|
  1297. | AT+FCR=1    | OK           | Enable reception |                      |
  1298. |-------------|--------------|------------------|----------------------|
  1299. | AT+FLID=    |              |                  |                      |
  1300. | <local id>  | OK           | Set local ID     |                      |
  1301. |-------------|--------------|------------------|----------------------|
  1302. |             | RING    <-   | detect ring  <-  | Dials[, send CNG]    |
  1303. |-------------|--------------|------------------|----------------------|
  1304. | ATA         |              | off hook         |                      |
  1305. |             |              | send CED         | get CED              |
  1306. |             |              | send CSI         | get CSI              |
  1307. |             |              | send DIS         | get DIS              |
  1308. |             | +FCON        | detect flags     | send v.21 flags      |
  1309. |             |[+FTSI:"<tsi>"] [get TSI]        | [send TSI]           |
  1310. |             | +FDCS:<codes>| get DCS          | send DCS             |
  1311. |             | OK           | begin TCF receive| start TCF            |
  1312. |-------------|--------------|------------------|----------------------|
  1313. | AT+FDR      |              | accept TCF       | finish TCF           |
  1314. |             | +FCFR        | send CFR         | get CFR              |
  1315. |             |[+FDCS:<codes>]                  |                      |
  1316. |             | CONNECT      | get page carrier | send page carrier    |
  1317. | <DC2>       |              | get page data    | send page data       |
  1318. |             |<page data stream>               |                      |
  1319. |             | <DLE><ETX> <-| detect RTC   <-  | send RTC             |
  1320. |             | +FPTS:1,<lc> |                  | drop carrier         |
  1321. |             | +FET:0    <- | get MPS       <- | send MPS             |
  1322. |             | OK           |                  |                      |
  1323. |-------------|--------------|------------------|----------------------|
  1324. | AT+FDR      |              | send MCF         | get MCF              |
  1325. |             | CONNECT      | get page carrier | send page carrier    |
  1326. | <DC2>       |              | get page data    | send page data       |
  1327. |             |<page data stream>               |                      |
  1328. |             | <DLE><ETX> <-| detect RTC   <-  | send RTC             |
  1329. |             | +FPTS:1,<lc> |                  | drop carrier         |
  1330. |             | +FET:2    <- | get EOP       <- | send EOP             |
  1331. |             | OK           |                  |                      |
  1332. |-------------|--------------|------------------|----------------------|
  1333. | AT+FDR      |              | send MCF         | get MCF              |
  1334. |             | +FHNG:0   <- | get DCN       <- | send DCN             |
  1335. |             | OK           | hangup           | hangup               |
  1336. |-------------|--------------|------------------|----------------------|
  1337.